פתרון בעיות תכנון בגרף

Similar documents
בינה מלאכותית - מבוא והצגת בעיות

קשירות.s,t V שני צמתים,G=(V,E) קלט: גרף מכוון מ- s t ל- t ; אחרת.0 אם יש מסלול מכוון פלט: הערה: הגרף נתון בייצוג של רשימות סמיכות.

מכונת מצבים סופית תרגול מס' 4. Moshe Malka & Ben lee Volk

עץ תורשה מוגדר כך:שורש או שורש ושני בנים שכל אחד מהם עץ תורשה,כך שערך השורש גדול או שווה לסכום הנכדים(נכד-הוא רק בן של בן) נתון העץ הבא:

Practical Session No. 13 Amortized Analysis, Union/Find

Depth-First Search DFS

ASP.Net MVC + Entity Framework Code First.

4...Informed Search Strategies Partial Order Planning 29...Hierarchical Decomposition Reenforcement Learning 40...Unsupervised Learning

הקיטסיגול הרבחה יעדמל בלושמה גוחה

Reflection Session: Sustainability and Me

מבוא לתכנות ב- JAVA תרגול 7

הקיטסיגול הרבחה יעדמל בלושמה גוחה

Rules Game (through lesson 30) by Nancy Decker Preparation: 1. Each rule board is immediately followed by at least three cards containing examples of

FILED: NEW YORK COUNTY CLERK 07/16/2014 INDEX NO /2014 NYSCEF DOC. NO. 102 RECEIVED NYSCEF: 07/16/2014 EXHIBIT 5

קריאת גרפים. לצפייה בפתרון בווידאו לתרגילים שבחוברת, כנסו ל "קריאת גרפים" בשאלון 801 שבאתר 116

תרגול מס' 01 אלגוריתם דיניץ

DNS פרק 4 ג' ברק גונן מבוסס על ספר הלימוד "רשתות מחשבים" עומר רוזנבוים 1

2016 Shaul Markovitch גדולים Shaul Markovitch

זו מערכת ישרת זוית )קרטזית( אשר בה יש לנו 2 צירים מאונכים זה לזה. באותו מישור ניתן להגדיר נקודה על ידי זוית ורדיוס וקטור

מבני נתונים תרגיל 4 פתרון

הטכנולוגיה בחינוך ד ר קובי גל אוניברסיטת בן גוריון בנגב

עצים ועצי חיפוש חומר קריאה לשיעור זה. Chapter 5.5 Trees (91 97) Chapter 13 Binary Search Trees ( )

אלגוריתמים 1 דפי עזר

Name Page 1 of 6. דף ט: This week s bechina starts at the two dots in the middle of

תרגול 11 תור עץ חיפוש בינארי

פתרון בעיית צביעת הגרפים בעזרת אלגוריתם גנטי ואלגוריתמי Beam-Search

sharing food intro price & extra drinks * ניתן להזמין מנות כשרות בתאום מראש for good memories

מבוא לתכנות - פיתוח משחקים ב Action Script 3.0

תרגול 8. Hash Tables

Advisor Copy. Welcome the NCSYers to your session. Feel free to try a quick icebreaker to learn their names.

קובץ שאלות פתורות אביב 2102

תצוגת LCD חיבור התצוגה לבקר. (Liquid Crystal Display) המערכת.

SEEDS OF GREATNESS MINING THROUGH THE STORY OF MOSHE S CHILDHOOD

מנגנון 5522 מידע על המנגנון מצב תצוגת שעה

םימתירוגלאו םינותנ ינבמ המירעו תינס, חמ רות רקצול הנילופ

Computer Structure. Exercise #1 יש להגיש את התשובות הסופיות על גבי טופס זה.

Hebrew Ulpan HEB Young Judaea Year Course in Israel American Jewish University College Initiative

State Pattern מימוש מכונת מצבים (FSM) מבוא בעיה תמיכה ועדכונים עדכון מס' 48 מאי 2002

Name Page 1 of 5. דף ז. This week s bechina begins with the fifth wide line at the top of

מבוא לתכנות - פיתוח משחקים ב Action Script 3.0

פרק מיון וחיפוש - לשם מה? הגדרה

מבוא למחשב בשפת פייתון

מבנה ההרצאה חלק א' 1 (הסבר על הסימולטור.Torcs 2 (הסבר על תחרות EvoStar 2010 ביחד עם הדגמה של.GA חלק ב' הסבר על המאמר

סיבוכיות זמן ריצה רדוקציות ושלמות ב- NP המחלקה P הגדרה: = המחלקה NP הגדרה: שפה סגירות שפות הגדרה: רדוקציה

יסודות מבני נתונים. תרגול :9 ערימה - Heap

פרק יעילות היעילות של קריטריון המקום עוסק בנושאים דומים לאלה של קריטריון הזמן. אנו נתרכז בחישובי היעילות של מדד הזמן.

THINKING ABOUT REST THE ORIGIN OF SHABBOS

מקוון Sharing and Playing: Serious Games and Collaboration in Online Education

מבוא לתרבות סייבר שיעור מס

תוכן העניינים: פרק סדרות סיכום תכונות הסדרה החשבונית:... 2 תשובות סופיות:...8 סיכום תכונות הסדרה ההנדסית:...10

אוניברסיטת בן גוריון בנגב

Checkers Cheaters Eliran Moyal & Moti Berger

סיכום מבני נתונים )שיעור( מרצה: אלכס סמורודניצקי. להערות: אמיר נווה

תרגול נושאי התרגול כעץ חיפוש בינארי : העץ הימני. Inorder(x) 1) if x NULL 2) then Inorder(left(x)) 3) print key[x] 4) Inorder(right(x))

שאלה ) 1 מבחינה של פרופ' נוגה אלון ( G V עם משקלים על הקשתות, ונתון עץ פורש מינימלי של G. נניח

1.1. הקדמה (דיסק). מדריכי. (מחיצות) Link

A JEW WALKS INTO A BAR: JEWISH IDENTITY IN NOT SUCH JEWISH PLACES

Homework 10. Theoretical Analysis of Service Stations in Steady State. Priority Queues.

מספר השאלון: Thinking Skills נספח: כישורי חשיבה )לפרק ראשון ושני( א נ ג ל י ת (MODULE F) ספרות )מילון הראפס אנגלי-אנגלי-ערבי(

סה"כ נקודות סה"כ 31 נקודות סה"כ 21 תוכן עניינים של פתרון המבחן. לולאת for )נתון אלגוריתם... מעקב, פלט

FILED: NEW YORK COUNTY CLERK 07/16/2014 INDEX NO /2014 NYSCEF DOC. NO. 134 RECEIVED NYSCEF: 07/16/2014 EXHIBIT 37

נספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית (MODULE F) ספרות או: מילון אנגלי-ערבי / ערבי-אנגלי או: מילון אנגלי-אנגלי-ערבי

ל"תוכנה" שכותבים, כמו פונקציה זו, קוראים "קוד"

ALEPH-TAU Hebrew School Lesson 204 (Nouns & Verbs-Masculine)

. s בנוסף, המרחק בקשתות על העץ מ- s לכל צומת ב- R הוא מינימאלי. נותן פיתרון ל: מציאת מסלול קצר ביותר מהמקור לכל צומת. גלוי צמתים ברי הגעה מהמקור.

A R E Y O U R E A L L Y A W A K E?

ASTM UL / FM / BS abesco

Patents Basics. Yehuda Binder. (For copies contact:

מבוא למחשב בשפת Matlab

שאלון ו' הוראות לנבחן

Theories of Justice

שאלון ד' הוראות לנבחן

א נ ג ל י ת בהצלחה! ב. משרד החינוך בגרות לנבחנים אקסטרניים )מילון הראפס אנגלי-אנגלי-ערבי( השימוש במילון אחר טעון אישור הפיקוח על הוראת האנגלית.

SHABBOS, 10 TAMMUZ, 5778

תכנון אלגוריתמים, אביב 2010, תרגול מס' 7 סריקה לעומק, מיון טופולוגי, רכיבים קשירים היטב. time time 1

The Connection between Town Planning, Public Taking (Appropriation) and Land Appraisal

Extended Introduction to Computer Science CS1001.py Lecture 25: Summary

כיורי גרניט כיורי מטבח עשויים גרניט להתקנה שטוחה, עמידות מלאה בפני שריטות וכתמים, עמידות בחום עד C ניקוי קל ומהיר צבע שאינו דוהה

תכנית סטארט עמותת יכולות, בשיתוף משרד החינוך א נ ג ל י ת שאלון א' Corresponds with Module A (Without Access to Information from Spoken Texts) גרסה א'

מ ש ר ד ה ח י נ ו ך ה פ ד ג ו ג י ת א ש כ ו ל מ ד ע י ם על ה ו ר א ת ה מ ת מ ט י ק ה מחוון למבחן מפמ"ר לכיתה ט', רמה מצומצמת , תשע"ב טור א'

טכנולוגיית WPF מספקת למפתחים מודל תכנות מאוחד לחוויית בניית יישומיי

אנגלית ספרות בהצלחה! /המשך מעבר לדף/ נספח: כישורי חשיבה )לפרק ראשון ושני( או: מילון אנגלי-ערבי / ערבי-אנגלי או: מילון אנגלי-אנגלי-ערבי

M A K I N G N E G A T I V E S P O S I T I V E

HEBREW THROUGH MOVEMENT

Name Page 1 of 5. ,דף ד: This week s bechina starts at the bottom of שיר של חול

סיכומים למבחן בקומפילציה

אנגלית שאלון ז' ג רסה א' הוראות לנבחן בהצלחה! )4( ההנחיות בשאלון זה מנוסחות בלשון זכר ומכוונות לנבחנות ולנבחנים כאחד. (MODULE G)

שאלון ו' הוראות לנבחן

מושגים בסיסיים תלמידים והורים יקרים,

נספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית (MODULE D) ספרות או מילון אנגלי-עברי-עברי-אנגלי

תכנית סטארט עמותת יכולות, בשיתוף משרד החינוך א נ ג ל י ת שאלון ב' Corresponds with Module B גרסה ב' הוראות לנבחן

interface Student {tag: Student, name: string; age: number;} const makestudent = ( name: string, age: number ) : Student =>

ANNEXURE "E1-1" FORM OF IRREVOCABLE STANDBY LETTER OF CREDIT PERFORMANCE OF CONTRACT (WHERE PRICES ARE NOT LINKED TO AN ESCALATION FORMULA)

שיעור.1 בונים מבנים מקוביות

מבוא לרשתות - תרגול מס' 11 Transparent Bridges

A lot of the time when people think about Shabbat they focus very heavily on the things they CAN T do.

מבני נתונים תרגיל 5 שאלות לגבי העבודה יש להעלות בפורום של הקורס או בשעות הקבלה של המרצה או המתרגל האחראיים על העבודה.

תשואה לגודל ומקסום רווחים הביקוש לגורמי ייצור עודף היצרן

FindText (SFX) UniSearch (Metalib) Jair de Marcas University of Haifa Library Periodicals Department

הצגת המשחק תלמידים משחקים סיום. פתיחה 12 min. min. min. min פתיחה. Copyright 2015

Transcription:

מבוא לבינה מלאכותית פתרון בעיות על ידי חיפוש בגרף מצבים שאול מרקוביץ

בעיית רוכב האופנוע רוכב אופנוע נוסע מת א לאילת במהירות קבועה במשך 6 שעות. בדרכו חזרה מאילת מקטין הרוכב את מהירותו ב 15 - קמ ש, ולכן נמשכת דרכו חזרה 8 שעות. מצא את המרחק ת א - אילת. Shaul Markovitch 2005 2

פתרון בעיות מילוליות באמצעות מחשב שלב ראשון: מייצגים את הבעיה באמצעות מערכת משוואות שלב שני: מפעילים אלגוריתם לפתרון מערכת משוואות Shaul Markovitch 2005 3

פתרון בעיות תכנון באמצעות מחשב שלב ראשון: מייצגים את הבעיה באמצעות גרף מצבים שלב שני: מפעילים אלגוריתם לחיפוש מסלול בגרף Shaul Markovitch 2005 4

שלשה מיסיונרים Shaul Markovitch 2005 5

שלשה קניבלים Shaul Markovitch 2005 6

נהר Shaul Markovitch 2005 7

סירה עם מקום לשני אנשים Shaul Markovitch 2005 8

מצב העולם Shaul Markovitch 2005 9

מצב מטרה Shaul Markovitch 2005 10

אילוץ Shaul Markovitch 2005 11

פתרון בעיות ע י חיפוש במרחב מצבים יצוג מצבי העולם האפשריים ע י גרף מצבים יצוג הבעיה ע י המצב הנוכחי וקבוצת מצבי מטרה חיפוש מסלול בגרף המצבים מהמצב הנוכחי לאחד ממצבי המטרה Shaul Markovitch 2005 12

הגדרת תחום הבעיות על ידי גרף המצבים הגדרת קבוצת המצבים האפשריים הגדרת האופרטורים המעבירים ממצב למצב Shaul Markovitch 2005 13

הגדרת קבוצת המצבים האפשריים ההחלטה מה מהווה מצב הינה קריטית להצלחת הסוכן קבוצת המצבים צריכה להיות עשירה מספיק כדי לאפשר פתרון הבעיה צריך להזהר מהגדרת קבוצה שמכילה מצבים לא רלוונטיים רבים שיהפכו את המרחב לגדול מידי Shaul Markovitch 2005 14

איך נתאר מצב בפתרון בעיית הקניבלים והמיסיונרים? Shaul Markovitch 2005 15

יצוג מצב בבעיית המיסיונרים וקניבלים - נסיון ראשון מצב ייוצג ע י רביעיה R M L, C L, M R, C הרביעיה מתארת את מספר הקניבלים והמיסיונרים בכל גדה לדוגמא, מצב ההתחלה הינו 3,0,0,3 חסר: מיקום הסירה Shaul Markovitch 2005 16

יצוג מצב בבעיית המיסיונרים וקניבלים -נסיון שני M 1, M 2, M 3, C 1, C 2, C 3, B מצב ייוצג ע י שביעיה M i {Left, Right} : Location of M i B {Left, Right} : Location of boat אינפורמציה מיותרת: מיקום ביניים של הסירה, התייחסות אינדיבידואלית לאנשים Shaul Markovitch 2005 17

יצוג מצב בבעיית המיסיונרים וקניבלים מצב ייוצג ע י חמישיה B M L, C L, M R, C R, מספר המסיונרים בגדה השמאלית M L B {Left, Right} : Location of boat Shaul Markovitch 2005 18

יצוג הקשתות בגרף המצבים ע י אופטורים אופרטור הינו פעולה שהסוכן יכול להפעיל כדי להעביר את העולם ממצב למצב ביתר דיוק - אופרטור הינו פונקציה המקבלת מצב ומחזירה מצב לכל אופרטור מוגדר תחום הגדרה Let O be the set of operators, S the set of all states Domain(o) S, o O Shaul Markovitch 2005 19

הגדרת הקשתות בגרף המצבים E = { s 1, s 2 o O [s 1 Domain(o)&s 2 = o(s 1 )]} Shaul Markovitch 2005 20

הגדרת קבוצת המצבים עבור בעיית המיסיונרים והקניבלים S={ C L, M L, C R, M R, B C L, M L, C R, M R 0, C L + C R = 3, M L + M R = 3, B {Left, Right} (1) Shaul Markovitch 2005 21

הגדרת האופרטורים עבור בעיית המיסיונרים והקניבלים O={MML, CCL, MCL, ML, CL, MMR, CCR, MCR, MR, CR} Domain(MML)={ C L, M L, C R, M R, Right M R 2, M R 2 C R M R 2 = 0, M L + 2 C L } MML ( C L, M L, C R, M R, Right = C L, M L + 2, C R, M R 2, Left Shaul Markovitch 2005 22

יצוג הקשתות ע י רשימת המצבים הבאים לפעמים במקום להשתמש באופרטורים, מציינים את רשימת המצבים הבאים מכל מצב Succ(s) : S 2 S, s S Shaul Markovitch 2005 23

הגדרת מחיר על הקשתות ישנם תחומי בעיות עבורן מוגדר מחיר לא בהכרח אחיד על הקשתות המחיר ניתן ע י פונקצית מחיר המגדירה מחיר מעבר בין שני מצבים עוקבים Cost : { s 1, s 2 s 1 S, s 2 Succ(s 1 )} R כאשר הפונקציה אינה נתונה מניחים שהמחיר הוא 1 לכל הקשתות Shaul Markovitch 2005 24

הגדרת בעיה תחום בעיות מגדיר את העולם בו נמצא הסוכן ואת השפעת פעולותיו על העולם בעיה ספציפית מוגדרת ע י זוג של מצב התחלתי (נוכחי) וקבוצת מצבי מטרה מצבי המטרה נתנים בצורה ישירה או ע י פרדיקט על מרחב המצבים G : S {T RUE, F ALSE} Shaul Markovitch 2005 25

דוגמא - חידת הפאזל 5 1 3 1 2 3 4 6 4 5 6 7 2 8 7 8? Shaul Markovitch 2005 26

קבוצת המצבים קבוצת האופרטורים מרחב המצבים S = { t 1,..., t 9 0 t i 8, t i t j } O = {Up, Down, Left, Right} 5 1 3 4 6 7 2 8 Up Down Left Right 5 3 5 1 3 5 1 3 5 1 3 4 1 6 4 2 6 4 6 4 6 7 2 8 7 8 7 2 8 7 2 8 Shaul Markovitch 2005 27

הגדרת הבעיה s i = 5, 1, 3, 4, 0, 6, 7, 2, 8 s g = 1, 2, 3, 4, 5, 6, 7, 8, 0 מצב התחלתי מצב מטרה 5 1 3 1 2 3 4 6 4 5 6 7 2 8 7 8 Shaul Markovitch 2005 28

דוגמא: חידת הסוס h נתון לוח שחמט ריק וסוס שניצב באחת הפינות. מצאו מסלול של מהלכי סוס שיכסה את כל משבצות הלוח ולא יבקר פעמיים באותה משבצת? Shaul Markovitch 2005 29

מרחב המצבים S = { 1, 1,..., r n, c n 1 n 64, 1 r i, c i 8} O = { x, y 2 x, y 2, x + y = 3} x, y ( 1, 1,..., r n, c n ) = 1, 1,..., r n, c n, r n + x, c n + y Domain( x, y ) = { 1, 1,..., r n, c n S 1 r n + x 8, 1 c n + y 8, r n + x, c n + y r i, c i 1 i n} Shaul Markovitch 2005 30

h Shaul Markovitch 2005 31

חידת הסוס: יצוג הבעיה s i = 1, 1 S g = {s S length(s) = 64} 1 38 55 34 3 36 19 22 54 47 2 37 20 23 4 17 39 56 33 46 35 18 21 10 48 53 40 57 24 11 16 5 59 32 45 52 41 26 9 12 44 49 58 25 62 15 6 27 31 60 51 42 29 8 13 64 50 43 30 61 14 63 28 7 Shaul Markovitch 2005 32

חידת המיכלים נתונים 2 מיכלים בעלי קבולת של 3 ליטר ו 5 ליטר בדיוק וכן בריכה גדולה מלאה במים. עליכם למלא באחד המיכלים 4 ליטר בדיוק ע י שפיכת מים בין מיכל למיכל או בין מיכל לבריכה Shaul Markovitch 2005 34

מרחב המצבים Capacities = m 1,..., m n S = { c 1,..., c n 0 c i m i } O = { i, j i j, 0 i, j n} i, j ( c 1,..., c i,... c j,..., c n ) = c 1,..., c i,... c j,..., c n { c 0 : i = mj c j c i c i (m j c j ) : otherwise { c j = cj + c i : m j c j c i m j : otherwise Shaul Markovitch 2005 35

יצוג הבעיה Capacities = (0, 0, 10000) s i = (0, 0, 10000) s g = { j 3, j 5, p S j 5 = 4} הברכה מיוצגת כמיכל נוסף בעל קבולת גדולה מאוד Shaul Markovitch 2005 36

? חיפוש ברשת נתון דף הבית של הטכניון. נתון פרדיקט המקבל כקלט דף ובודק אם זהו דף הבית של קורס בנושא בינה מלאכותית. מצאו דף בית של קורס בבינה מלאכותית הנמצא בטכניון Shaul Markovitch 2005 37

מרחב המצבים קבוצת המצבים: אוסף דפי הרשת האופטורים: קבוצת הקישורים מצב התחלה: דף הבית של הטכניון מטרה: מוגדרת ע י הפרדיקט הבודק האם דף שייך לקורס בבינה מלאכותית Shaul Markovitch 2005 38

אלגוריתמים לחיפוש במרחב מצבים אלגוריתמי החיפוש מתחילים מהמצב ההתחלתי בתחילה הגרף מוגדר רק בצורה לא מפורשת אלגוריתמי החיפוש חושפים בהדרגה חלקים מגרף המצבים והופכים אותו לגרף מפורש Shaul Markovitch 2005 39

פתרון לבעיית חיפוש הפתרון לבעיית חיפוש היא סדרת אופרטורים המובילים מהמצב ההתחלתי למצב סופי Sol(o 1,..., o n ) G(o n (o n 1 (... o 1 (s i )...))) = T RUE Shaul Markovitch 2005 40

פתרון ע י סדרת מצבים כאשר הקשתות בגרף ניתנות ע י פונקציית עוקב, הפתרון לבעיית חיפוש היא סדרת מצבים על מסלול המוביל מהמצב ההתחלתי למצב סופי Sol(s 1,..., s n ) s 1 = s i, G(s n ) = T RUE, i < n[s i+1 Succ(s i )] Shaul Markovitch 2005 41

מצב סופי כפתרון לפעמים המסלול למצב המטרה אינו מענין אותנו אלא רק מצב המטרה עצמו זה יתכן כמובן רק כשמצב המטרה אינו נתון במפורש אלא ע י פרדיקט לדוגמה, יתכן שאנו מחפשים דף אינטרנט בעל תכונות מסוימות. כשנמצא כזה נרצה לקבל את הדף Shaul Markovitch 2005 42

פעולת פיתוח צומת הפעולה הבסיסית של אלגוריתמי החיפוש היא פעולת פיתוח צומת פעולה זו מקבלת צומת ומחזירה את קבוצת הצמתים העוקבים 5 1 3 4 6 7 2 8 Up Down Left Right 5 3 5 1 3 5 1 3 5 1 3 4 1 6 4 2 6 4 6 4 6 7 2 8 7 8 7 2 8 7 2 8 Shaul Markovitch 2005 43

אסטרטגיות חיפוש אסטרטגית חיפוש מגדירה כיצד יש לחפש במרחב כל אסטרטגיות החיפוש מתחילות לחפש ממצב ההתחלה כל אסטרטגיות החיפוש מבצעות סדרה של פיתוחי צמתים האסטרטגיות נבדלות בבחירת הצומת הבא לפיתוח ובהחלטה אילו צמתים ישמרו בזכרון Shaul Markovitch 2005 44

מבנה נתונים: צומת המצב במרחב המצבים אותו מיצג הצומת מצביע לצומת ממנו נוצר הצומת הנוכחי state parent state parent 6 8 3 4 2 1 7 5 NIL state parent 6 8 3 4 2 7 5 1 state parent 6 8 3 4 2 1 7 5 Shaul Markovitch 2005 45

ההבדל בין צומת למצב מצב הינו יצוג של קונפיגורציה רגעית של העולם בו פועל הסוכן צומת מייצג שלב בתהליך החיפוש של הסוכן כל צומת מיצג מצב אולם יתכן שכמה צמתים ייצגו את אותו המצב Shaul Markovitch 2005 46

state parent 6 8 3 4 2 1 7 5 NIL state parent 6 8 3 4 2 7 5 1 state parent 6 8 3 4 2 1 7 5 state parent 6 8 3 4 2 1 7 5 state parent 6 8 4 2 3 7 5 1 state parent 6 8 3 4 2 7 5 1 Shaul Markovitch 2005 47

path הפרוצדורה מקבלת צומת, עוקבת אחרי מצביעי ההורים עד שמגיעה לצומת ההתחלה ומחזירה את המסלול path(n) if Null(parent[N]) then return [ ] else return (path(parent[n]) state[n]) Shaul Markovitch 2005 48

החזרת סדרת אופרטורים כדי להחזיר סדרת אופרטורים במקום סדרת מצבים אנחנו מוסיפים למבנה הנתונים של צומת גם את האופרטור שהביא למצב op-path(n) if Null(parent[N]) then return [ ] else return(op-path(parent[n]) operator[n]) Shaul Markovitch 2005 49

state operator parent op-path(n6)=[up,left] 6 8 3 4 2 1 7 5 NIL NIL state operator parent state operator parent 6 8 3 4 2 7 5 1 up 6 8 3 4 2 1 7 5 left state operator parent state operator parent state operator parent 6 8 3 4 2 1 7 5 down 6 8 4 2 3 7 5 1 up 6 8 3 4 2 7 5 1 left N6 Shaul Markovitch 2005 50

הערכת ביצועים של אלגוריתם חיפוש משאבי חיפוש טיב פתרון Shaul Markovitch 2005 51

משאבי חיפוש - זמן ריצה זמן ריצה - משאב מרכזי אותו נרצה לצמצם מדד בעייתי - רגיש לחמרה, למהדר, לאופטימיזציה, ליכולת תכנות מדד חליפי - מספר הצמתים שפותחו מדד דומה - מספר הצמתים שנוצרו Shaul Markovitch 2005 52

משאבי חיפוש - צריכת זכרון תהליכי חיפוש עלולים להכשל בגלל חוסר זכרון תהליך חיפוש שמייצר 1,000,000 צמתים בשניה ומקדיש 10 בתים לכל צמת עלול להכשל כבר אחרי 100 שניות לכן חשוב למדוד את צריכת הזכרון של אלגוריתמי חיפוש שונים Shaul Markovitch 2005 53

איכות הפתרון כאשר האלגוריתם נדרש להחזיר מסלול פתרון, נמדדת איכות הפתרון בד כ ע י אורך או מחיר המסלול דוגמא: תכנון סדרת פעולות עבור רובוט. במקרה כזה סדרה קצרה יותר עדיפה כאשר המסלול אינו דרוש יתכן שקיים מדד נוסף שמכמת איכות של מצבי מטרה דוגמא: דרגת רלוונטיות שמוחזרת ע י מנועי חיפוש Shaul Markovitch 2005 54

תכונות של אלגוריתמי חיפוש שלמות : אלגוריתם חיפוש הינו שלם אם מובטח שיחזיר פתרון כאשר פתרון קיים. אופטימליות (קבילות): אלגוריתם חיפוש הינו אופטימלי כאשר מובטח שיחזיר את הפתרון בעל המחיר המינימלי סיבוכיות זכרון סיבוכיות זמן Shaul Markovitch 2005 55

סוגי אלגוריתמי חיפוש אלגוריתמים עוורים או לא מיודעים מחפשים פתרון בהנתן מרחב מצבים ובעיה ללא שום מידע נוסף אלגוריתמים מיודעים או יוריסטיים משתמשים בידע נוסף כדי ליעל את החיפוש Shaul Markovitch 2005 56